Signal detector using matched filter for training signal detection

ABSTRACT

A method of detecting whether an incoming signal is a signal type of interest having a known training sequence. The signal is filtered with a matched filter as in conventional methods. However, the filter processing is performed in a unique manner that maximizes computational efficiency.

RELATED PATENT APPLICATION

This application claims the benefit of U.S. Provisional Application No.60/805,276, filed Jun. 20, 2006 and entitled “SIGNAL DETECTOR USINGMATCHED FILTER FOR TRAINING SIGNAL DETECTION.”

TECHNICAL FIELD OF THE INVENTION

This invention relates to signal processing, and more particularly tosignal detection by using a filter matched to a training sequence of asignal of interest.

BACKGROUND OF THE INVENTION

“Blind” signal detection generally involves receiving and decodingincoming signals when the signal type is not known to the receiver. Manyfields of science deal with this type of signal detection, and varioustechniques have been developed to identify an incoming signal of unknowntype, so that its parameters, such as the modulation type and baud rate,can be known and used to decode the signal.

Several examples of signal recognition techniques are parameter-basedalgorithms, pattern recognition, algorithms that exploitcyclostationarity characteristics, and neural networks. U.S. Pat. No.6,690,746, entitled “Signal Recognizer for Communications Signals”,assigned to Southwest Research Institute, discusses a system and methodfor classifying incoming signals as being one of a variety of signaltypes. Signal parameters are estimated and signals are demodulated inaccordance with the estimated parameters.

A subfield of signal recognition includes methods that attempt to decode(or otherwise use) only signals of a desired type. For example, a signalof interest might be a signal that carries a particular trainingsequence.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present embodiments and advantagesthereof may be acquired by referring to the following description takenin conjunction with the accompanying drawings, in which like referencenumbers indicate like features, and wherein:

FIG. 1 illustrates a method of identifying a signal by identifying itstraining sequence in accordance with the invention.

FIG. 2 illustrates the relative degradation caused by various conditionsaffecting an incoming signal.

FIG. 3 illustrates a signal detection system in accordance with theinvention.

DETAILED DESCRIPTION OF THE INVENTION

For purposes of this description, “signal detection” is the process bywhich an unknown signal is classified as a signal of interest or not.The method and system described herein are for “blind channel”conditions, in the sense that the receiving end of the system (referredto herein as the “signal detector”) has no knowledge of the transmittedsignal's path, its frequency, the type of signal, or the signalparameters.

As explained below, the object of the method and system is to detectwhether an incoming signal has a particular training sequence. Because atraining sequence is unique to a particular type of signal, if thetraining sequence is identified, then the signal type and hence itssignal parameters are assumed to be known. The message in the signal canthen be decoded.

A feature of the invention is that it provides for a computationallyefficient search for the training sequence. The method is robust in thepresence of unknown carrier frequency offset values and channeldistortion.

A “training sequence” is a part of a signal that is a known sequence oftransmitted symbols. The training sequence does not contain any“message” information, but rather is used for equalization processing.Specifically, the training sequence enables the receiver to gatherinformation about the channel characteristics. Typically, a particulartype of signal has its own unique training sequence. If a signalcomplies with a standard, the training sequence is part of thatstandard. For example, for a GSM signal, which arrives in bursts of 126bits, 26 bits are reserved for a training sequence.

A training sequence is typically associated with a digital signal, butcan be used with analog signals. In general, the invention describedherein can be used with any signal having a training sequence.

For an incoming signal containing a training sequence, a matched filterprovides an optimum detection strategy. In general, in communicationssystems, “filters” are used to remove or attenuate an undesired portionof signal's spectrum while enhancing desired portions of the signal.Filters may be analog or digital, with the later being used inconnection with processing devices to process a signal after it has beensampled and digitized. A “matched filter” is the filter design for aparticular signal that maximizes the signal to noise ratio at the outputof the filter.

For detecting a training sequence, the matched filter is designed tofind a match to the training sequence of the signal of interest. Asexplained below, the filter is designed as the conjugated trainingsequence t. The values of the convolution of the matched filter with theinput signal can be tested against a suitably chosen threshold to makethe detection decision. If the correlation is high, the signal isdetermined to be a signal of interest.

FIG. 1 illustrates a method of signal recognition in accordance with theinvention. The steps of the method, particularly the processing of Steps11-16 can be implemented with conventional processing equipment,programmed in accordance with the method described herein.

Step 10 is receiving an incoming signal of an unknown type. Step 11 issampling the signal at a sampling frequency, F_(s), which is the same asthe sample frequency assumed for the filter calculations describedbelow. It the signal is already digital, it is resampled at F_(s).

Noteably, the signal is not mixed with different frequencies prior toapplication of the matched filter processing in Step 12. As explainedbelow, a feature of the invention is the re-ordering of processing stepsfor computation efficiency. The “mixing” is performed within the filterprocessing rather than before the filter processing.

Step 12 is processing the data through a filter that is matched to aknown training signal, and is described in further detail below. Step 14is determining whether the signal training signal is matched to thefilter. If so, the signal is assumed to be a signal of interest, in Step16, the message portion of the signal may be decoded using the trainingsequence.

The use of a matched filter for detecting a training sequence may bedescribed in mathematical terms. Specifically, in matrix-vectornotation, matched filtering can be expressed as:

$\begin{matrix}{N \equiv {{Length}\mspace{14mu}{of}\mspace{14mu}{Training}\mspace{14mu}{Sequence}}} \\{t \equiv {{Training}\mspace{14mu}{Sequence}\mspace{14mu}{Vector}}} \\{Q \equiv {{Length}\mspace{14mu}{of}\mspace{14mu}{Input}\mspace{14mu}{Signal}}} \\{{\underset{\_}{x}\lbrack n\rbrack} \equiv {{Input}\mspace{14mu}{Signal}\mspace{14mu}{Vector}\mspace{14mu}{Over}\mspace{14mu}{Sample}\mspace{14mu}{{Indices}\mspace{14mu}\left\lbrack {n,{n + N - 1}} \right\rbrack}}} \\{\alpha \equiv {{Minimum}\mspace{14mu}{Confidence}\mspace{14mu}{Threshold}\mspace{14mu}{in}\mspace{14mu}{Range}\mspace{14mu}\left( {0,1} \right\rbrack}} \\{\mu \equiv {{Detection}\mspace{14mu}{Threshold}}} \\{= {\alpha^{2}{\underset{\_}{t}}{{\underset{\_}{x}\lbrack n\rbrack}}}} \\{= {{\alpha^{2}\left( {{\underset{\_}{t}}^{H} \cdot \underset{\_}{t}} \right)}\left( {{{\underset{\_}{x}}^{H}\lbrack n\rbrack} \cdot {\underset{\_}{x}\lbrack n\rbrack}} \right)}} \\{{y\lbrack n\rbrack} \equiv {{Matched}\mspace{14mu}{Filter}\mspace{14mu}{Output}\mspace{14mu}{at}\mspace{14mu}{Sample}\mspace{14mu}{Index}\mspace{14mu} n}} \\{= {{\underset{\_}{t}}^{H} \cdot {\underset{\_}{x}\lbrack n\rbrack}}}\end{matrix}$

The number of multiplications required to evaluate y[n] for all possiblen can be expressed as:Q(1+3·log₂ Q), Q>N, Q=2^(k)in the most efficient implementation.

If y[n] exceeds μ at any index, the training sequence has been detected.Under perfect conditions and in the absence of noise, a confidencethreshold of 1 may be chosen. In practice, however, the confidence isdegraded by the signal to noise ratio (SNR), channel propagation filterh, and carrier or doppler frequency offset f. The perfect confidence ismultiplicatively degraded by:

$\frac{1}{1 + {SNR}} \cdot \frac{h^{2}\lbrack 0\rbrack}{{\underset{\_}{h}}^{H} \cdot \underset{\_}{h}} \cdot {\frac{\sin(\omega)}{\omega}}$where: $\omega = \frac{2\pi\; N}{M}$ $M = \frac{F_{s}}{f}$F_(s) ≡ Sampling  Frequency  in  Hz

As illustrated in FIG. 2, it is the third degradation term (due tofrequency offset) that has the greatest effect. The x-axis units havebeen normalized relative to each other.

There is nothing that can be done at the receiver to change the SNR orpropagation channel conditions. However, in conventional matched filtermethods, mixing the input signal with M different frequencies prior toperforming the matched filter search has been used to reduce degradationdue to unknown carrier offset. M is chosen to set the worst-casedegradation to a manageable value (no lower than 0.9). This greatlyincreases the number of required complex multiplications to:M·Q(1+3·log₂ Q)

The conventional filtering method, with mixing, can be expressed asfollows:

$\begin{matrix}{{{y_{m}\lbrack n\rbrack} \equiv {{Matched}\mspace{14mu}{Filter}\mspace{14mu}{Output}\mspace{14mu}{at}\mspace{14mu}{Sample}\mspace{14mu}{Index}\mspace{14mu} n}},} \\{{Frequency}\mspace{14mu}{Offset}\mspace{14mu} f_{m}} \\{= {{\underset{\_}{t}}^{H} \cdot E_{m} \cdot {\underset{\_}{x}\lbrack n\rbrack}}} \\{E_{m} \equiv {{Mixing}\mspace{14mu}{Matrix}}} \\{= {{diag}\left( {\mathbb{e}}^{j\; 2\pi\; f_{m}n} \right)}} \\{f_{m} = {m \cdot \frac{F_{s}}{M}}}\end{matrix}$

A feature of the method of FIG. 1 (Step 12) is that by rearranging theorder of operations, the matched filter output is performed as the(fast) Fourier transform of the dot product of the conjugated trainingsequence and the input signal. In this method, y_(m)[n] is the matchedfilter output at sample index n and frequency offset f_(m).y _(m) [n]=FFT(t*·x[n])

The method of FIG. 1 has computational complexity:N·Q(1+log₂ N)and a decrease in complex multiplications by a factor of:

$\frac{M \cdot \left( {1 + {3\;\log_{2}Q}} \right)}{N \cdot \left( {1 + {\log_{2}N}} \right)}$This is always a decrease because both M and Q are required to begreater than N.

To understand the reduced computational complexity of the improvedmethod of FIG. 1, consider the following practical example:

-   -   N=128    -   F_(s)=8000    -   M=512    -   Q=512

The number of complex multiplies of the traditional method is 7,340,032.The number of complex multiplies of the improved, efficient method is524,288.

There is one further innovation that should be mentioned. Each y_(m)[n]comprises one column of a two-dimensional time-frequency image of size(M×Q). This necessitates a two-dimensional peak search against thethreshold. Once a peak is detected, computing the 2-D expected valuearound the peak provides precise estimates of the carrier frequency andsymbol timing clock offsets. Considering the example values providedabove, the accuracy is typically less than 1 Hz and 1 sample,respectively.

In other words, the output of the matched filter (Step 12) provides atleast four signal parameters. The correlation has a position in time anda position in frequency, as well as a value. The correlation value andposition can be used to determine the following parameters: the starttime of the training sequence (which indicates the symbol timing clockoffset), the carrier frequency, the carrier offset, and the signal tonoise ratio.

FIG. 3 illustrates a signal detection system 300, designed to detect asignal having a particular training sequence. System 300 is an exampleof an application of signal detection for the purpose of decoding thesignal. Other applications are possible.

System 300 may be part of a larger system, having different “modules”each associated with recognizing a different type of signal. Forexample, a system 300 may be a module of a larger system which hasadditional modules like system 300 but for signals having differenttraining sequences. A larger system might also process an incomingsignal prior to the signal being processed by system 300, such as asystem that first determines if the incoming signal is of a type thatuses a training sequence. If so, the signal would be directed to one ormore modules like system 300, and if not, the signal could be deemed notof interest or it could be directed to some other type of recognitionmodule.

As described above, the incoming signal is sampled (or resampled) by anA/D converter 31. It is then processed by the training sequence filter33, which is designed to detect a particular training sequence ofinterest. The process performed by filter 33 is that of Step 12 in themethod of FIG. 2 discussed above. The results of the filter 33,typically a correlation value, are delivered to a confidence analyzer35, which uses the filter results to determine whether the signal islikely to be the signal of interest. Data from the confidence analyzermay also be delivered to a graphical user interface (GUI) 37, forinteraction with an operator. If the signal is determined to be thesignal of interest, it may be routed to a decoder 39, which uses signalparameters associated with that type of signal to decode the “message”portion of the signal.

What is claimed is:
 1. A method of detecting whether an incoming signalis a signal type of interest having a known training sequence,comprising: receiving an input signal of an unknown type, such that anycarrier frequency offset is unknown; sampling the input signal at aknown sampling frequency; filtering the input signal, using digitalfilter processing, by performing the following steps: calculating theconjugate of the training sequence, calculating the dot product of theconjugated training sequence and the input signal, and calculating thefast Fourier transform of the dot product; wherein the carrier frequencyoffset remains unknown prior to filtering the input signal and thefiltering step is performed without prior mixing of the input signal;repeating the filtering step over an index of n iterations, where n is asample index, thereby obtaining a series of filter outputs that arecolumns of a two-dimensional time-frequency matrix; and performing atwo-dimensional search of the filter outputs against a detectionthreshold value, thereby obtaining a correlation value having a positionin time and a position in frequency; using the results of the precedingstep to obtain one or more of the following parameters of the inputsignal: start time of the training sequence, carrier frequency, andcarrier offset.
 2. The method of claim 1, wherein the signal is a GSMsignal.
 3. The method of claim 1, wherein the signal is an analogsignal.
 4. The method of claim 1, wherein the signal is a digitalsignal.
 5. The method of claim 1, wherein the results of thetwo-dimensional search are further used to determine signal to noiseratio.
 6. The method of claim 1, further comprising the step of usingthe parameters to decode the incoming signal.
 7. A blind signaldetection system for detecting whether an incoming signal is a signaltype of interest having a known training sequence, comprising: an analogto digital converter for receiving the signal and for sampling thesignal at a known sampling frequency; wherein the signal is of anunknown type, such that any carrier frequency offset is unknown; adigital filter for filtering the signal, using digital filterprocessing, by performing the following steps: calculating the conjugateof the training sequence, calculating the dot product of the conjugatedtraining sequence and the input signal, calculating the fast Fouriertransform of the dot product, and repeating the filtering step over anindex of n iterations, where n is a sample index, thereby obtaining aseries of filter outputs that are columns of a two-dimensionaltime-frequency matrix; wherein the digital filter performs the digitalfilter processing without a known value of the carrier frequency offsetand without any mixing of the input signal prior to the digital filterprocessing; and an analyzer for analyzing the filter output to determinewhether the incoming signal is of the signal type of interest; whereinthe analyzer is programmed to perform a two-dimensional search of thefilter outputs against a detection threshold value, thereby obtaining acorrelation value having a position in time and a position in frequency,and to obtain one or more of the following parameters of the inputsignal: start time of the training sequence, carrier frequency, andcarrier offset.
 8. The system of claim 7, wherein the incoming signal isa GSM signal.
 9. The system of claim 7, wherein the incoming signal isan analog signal.
 10. The system of claim 7, wherein the incoming signalis a digital signal.
 11. The system of claim 7, further comprising thestep of using the parameters to decode the incoming signal.